package cn.drenal.capcap.service;

import cn.drenal.capcap.entity.UpcomingActivity;
import cn.drenal.capcap.entity.vo.UpcomingActivityListVO;
import cn.drenal.capcap.entity.vo.forum.ForumUpcomingActivityVO;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;

import java.util.List;

/**
 * 活动预告服务接口
 */
public interface UpcomingActivityService extends IService<UpcomingActivity> {

    /**
     * 分页查询活动预告列表
     *
     * @param current     当前页
     * @param size        每页大小
     * @param title       预告标题
     * @param status      预告状态
     * @return 分页数据
     */
    Page<UpcomingActivityListVO> page(Integer current, Integer size, String title, Integer status);
    
    /**
     * 获取随机活动预告列表
     * 随机抽取在startTime之前的五个活动
     *
     * @return 活动预告VO列表
     */
    List<ForumUpcomingActivityVO> getRandomUpcomingActivities();
}